/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package acceso_datos;

import datos.*;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;

/**
 *
 * @author Pablo
 */
public class OperadorDB {
    public boolean grabar(Operador operad) throws SQLException {
        UsuarioDB usuarioDB=new UsuarioDB();
                
        Usuario user=new Usuario();
        user.setCedula(operad.getCedula());
        user.setNombre(operad.getNombre());
        user.setApellido(operad.getApellido());
        user.setDireccion(operad.getDireccion()); 
        user.setTelefono(operad.getTelefono());
        user.setContrasena(operad.getContrasena());
        
        usuarioDB.grabar(user);
        
        
        OperacionesBase db = new OperacionesBase();
        String query = "insert into operador values('" + operad.getCedula()+"')";
        boolean resultado = db.ingreso(query);
        db.cerrarConexion();
        return resultado;        
    }
    
    public int modificar(Operador admin) throws SQLException {
        UsuarioDB usuarioDB=new UsuarioDB();
        int resultado=usuarioDB.modificar(admin);
        return resultado;
    }
    public int eliminar(String id) throws SQLException {
        OperacionesBase db = new OperacionesBase();
        UsuarioDB usuarioDB=new UsuarioDB();        
        int resultado = usuarioDB.eliminar(id);
        db.cerrarConexion();
        return resultado;
    }
    public Operador buscar(String id) throws SQLException {
        UsuarioDB usuarioDB=new UsuarioDB();   
        OperacionesBase db = new OperacionesBase();       
        String query="select * from operador where cedula ='" + id + "'";
        ResultSet resultado = db.seleccion(query);
        Operador operad=null;
        if (resultado!=null) {
            Usuario user=usuarioDB.buscar(id); 
            resultado.next();
            operad = new Operador("", "", "", "", "", "", "");
            operad.setCedula(user.getCedula());
            operad.setNombre(user.getNombre());
            operad.setApellido(user.getApellido());
            operad.setDireccion(user.getDireccion());
            operad.setTelefono(user.getTelefono());
            operad.setContrasena(user.getContrasena());
            
        }
        db.cerrarConexion();
        return operad;
    }
    public HashMap<String,Operador> listar() throws SQLException {
       OperacionesBase db = new OperacionesBase();
        String query="select * from operador ";
        ResultSet resultado = db.seleccion(query);
        Operador admin=null;
        HashMap<String,Operador> todos=new HashMap<String,Operador>();
        
        UsuarioDB usuarioDB=new UsuarioDB();   
        
        while (resultado.next()) {
            
            Usuario user=usuarioDB.buscar(resultado.getString("cedula")); 
            admin = new Operador("", "", "", "", "", "", "");
            admin.setCedula(user.getCedula());
            admin.setNombre(user.getNombre());
            admin.setApellido(user.getApellido());
            admin.setDireccion(user.getDireccion());
            admin.setTelefono(user.getTelefono());
            admin.setContrasena(user.getContrasena());            
            todos.put(admin.getCedula(),admin);
        }
        db.cerrarConexion();
        return todos;
    }
}
